The present invention relates generally to communication systems and, more particularly, to communication systems that enable diagnostic tools to be used to identify and/or repair problems associated with a device located at a remote location. Even more particularly, the present invention relates to a communication system for a medical imaging system that detects when there is a communication problem when retrieving data from a primary database and that automatically accesses data from a back-up database.
Today, many electronic devices, such as medical imaging systems, have the ability to communicate with other electronic devices, such as computers, located a great distance from the electronic device. These devices may be connected to the Internet or some other communication system that enables them to communicate with other electronic devices. Communication may be established with the devices for many reasons. For example, a medical imaging system may be connected to a communication system to enable an engineer working at a remote location to identify or repair a problem associated with the medical imaging system. The engineer could access the medical imaging system over the Internet to retrieve data from the device, such as a poor quality medical image taken by the medical imaging system. The engineerxe2x80x9ds computer may have an image enhancement program that may be used to improve the quality of the image. Alternatively, a diagnostic program on the engineerxe2x80x9ds computer may communicate with the medical imaging system to identify the cause of the poor image quality. Additionally, an engineer or technician may use the communication system to supply data to the device, such as a programming repair or upgrade.
A manufacturer may sell devices, such as medical imaging systems, to customers located around the world. A system to enable a manufacturer to communicate with products located around the world may take many forms. The system may vary depending, for example, on the type of product, the information to be communicated, and the location of engineers or technicians to repair the product. One system that may be used is to have a number of satellite communication centers coupled to a central system. The satellite communication centers could be located in various locations around the world and staffed by engineers and other technicians. For example, a satellite communication system could be located close to a large concentration of products, making a visit to the product when necessary to repair the product much easier. Additionally, customers around the world speak many languages and have different cultures. Therefore, having engineers that can speak with customers in their own language, who are familiar with local customs, and who are located relatively close to the customers so that they can respond quickly, can make it much easier to solve the customerxe2x80x9ds problems. The central system may serve as the primary archive for data that may be used by all of the satellite centers and as the warehouse for large quantities of data. For example, all medical images uploaded into the system may be stored in the central system. The communication centers may communicate with databases maintained in the central system to store and/or retrieve data as needed to perform various functions, such as identifying and/or repairing problems associated with the device.
However, breakdowns in communication between the communication centers and the central system may occur. In this event, the communication system functions may be degraded significantly. Indeed, the system may not be able to function at all. There is a need, therefore, for a method to improve access to data to enable communication with remote devices to continue uninterrupted when there is a communication failure between some of the elements of a communication system. Furthermore, it is also desirable to provide a system that has the ability to switch a user between communicating with a database in a first system to communicating with a database in a second system. Additionally, it is desirable that the switch between databases is automatic and performed in a manner that is transparent to the user.
The invention provides a novel technique for accessing data stored in separate databases. According to one aspect of the present technique, a communication system having first and second computer systems is used to retrieve data from a primary or a secondary database. The primary and secondary databases are coupled to the first computer system. A data access controller is used in the system to automatically shift the first computer system from retrieving data from the primary database to retrieving data from the secondary database. The data access controller shifts when a communication error between the primary database and the first computer system is detected by the system.
According to another aspect of the present technique, a computer program is used to direct a first computer system to verify communication with a primary source of data accessible via a second computer system. The computer program also directs the first computer system to access data from a secondary source of data when communication between the primary source of data and the first computer system is not verified.
According to another aspect of the present technique, a method is used to operate a communication system. As part of the method, a first set of data is stored in a primary database stored in a first computer system. A second set of data is stored in a secondary database. An application is coupled to the primary database or the secondary database via a data access controller stored in a second computer system. The data access controller is configured to normally couple the application to the primary database. Communication is verified between the second computer system and the primary database. The data access controller is automatically operated to couple the application to the secondary database when communication between the second computer system and the primary database is not verified.
According to another aspect of the present technique, a method is used to operate a communication system. As part of the method, a first database is stored in a first computer system. The first computer system is coupled to a second computer system. The second computer system is, in turn, coupled to a second database. The communication system is accessed via the second computer system. Data is retrieved from the communication system via a data access controller operable to couple the second computer system to one of the first and second databases.